Method for managing hard disk drive expanders in a cluster storage system

ABSTRACT

A method for managing HDD expanders in a cluster storage system is provided. The method according to one embodiment is implemented by each of the HDD expanders, and includes: indicating a device type of HDD expander to a parent node thereof when a device-type request originates from the parent node; and indicating a device type not of HDD expander to the parent node otherwise. The method according to another embodiment is implemented by each HDD expander connected indirectly to a root node, and includes: indicating a device type not of HDD expander to the root node when a device-type request originates from the root node; and indicating a device type of HDD expander to a node that initiates the device-type request otherwise.

CROSS-REFERENCE TO RELATED APPLICATION

This application claims priority of Taiwanese Patent Application No.108123376, filed on Jul. 3, 2019.

FIELD

The disclosure relates to a cluster storage system, and moreparticularly to a method for managing HDD expanders in a cluster storagesystem.

BACKGROUND

A data storage system, such as Joint Batch of Disks (JBOD), generallyhas a plurality of hard disk drives (HDDs) and at least one HDD expanderconnected to the HDDs. The HDD expander is typically configured toswitch communication signals from one HDD to another.

The number of HDDs that an HDD expander can be connected to and canmanage is finite, primarily limited by the number of physical links(PHYs) of the HDD expander.

SUMMARY

Therefore, an object of the disclosure is to provide a method formanaging HDD expanders in a cluster storage system that can alleviate atleast one of the drawbacks of the prior art. The cluster storage systemfurther includes a host computer connected to the HDD expanders to forma hierarchical tree structure.

According to one aspect of the disclosure, the method includes steps, tobe implemented by each of the HDD expanders, of:

upon receiving a device-type request for inquiring a device type from aparent node of the HDD expander in the hierarchical tree structure,determining whether the device-type request originates from the parentnode;

when it is determined that the device-type request originates from theparent node, transmitting a device-type reply indicating a device typeof HDD expander to the parent node, and forwarding the device-typerequest to each child node of the HDD expander in the hierarchical treestructure; and

when it is determined that the device-type request does not originatefrom the parent node, transmitting a device-type reply indicating adevice type not of HDD expander to the parent node.

According to another aspect of the disclosure, the method includessteps, to be implemented by each of those of the HDD expanders that areconnected indirectly to the host computer, of:

upon receiving a device-type request for inquiring a device type from aparent node of the HDD expander in the hierarchical tree structure,determining whether the device-type request originates from the hostcomputer;

when it is determined that the device-type request originates from thehost computer, transmitting a device-type reply indicating a device typenot of HDD expander to the host computer; and

when it is determined that the device-type request does not originatefrom the host computer, transmitting a device-type reply indicating adevice type of HDD expander to a node that initiates the device-typerequest, and forwarding the device-type request to each child node ofthe HDD expander in the hierarchical tree structure.

BRIEF DESCRIPTION OF THE DRAWINGS

Other features and advantages of the disclosure will become apparent inthe following detailed description of the embodiment (s) with referenceto the accompanying drawings, of which:

FIG. 1 is a block diagram illustrating a cluster storage system thatimplements a method for managing hard disk drive (HDD) expandersaccording to one embodiment of this disclosure;

FIGS. 2 and 3 illustrate processes in accordance with one embodiment ofthe method for managing HDD expanders; and

FIGS. 4 and 5 illustrate processes in accordance with another embodimentof the method for managing HDD expanders.

DETAILED DESCRIPTION

Before the disclosure is described in greater detail, it should be notedthat where considered appropriate, reference numerals or terminalportions of reference numerals have been repeated among the figures toindicate corresponding or analogous elements, which may optionally havesimilar characteristics.

FIG. 1 illustrates a cluster storage system 100 according to oneembodiment of this disclosure. The cluster storage system 100 includes ahost computer 1, a plurality of hard disk drive (HDD) expanders 2connected to the host computer 1 in series, and a plurality of HDDs 3connected to the HDD expanders 2, all together forming a hierarchicaltree structure. The host computer 1 serves as a root node of thehierarchical tree structure. In the example shown in FIG. 1, the clusterstorage system 100 includes five HDD expanders 2 a-2 e.

Further referring to FIG. 2, a method for managing the HDD expanders 2in the cluster storage system 100 is illustrated, and includes thefollowing steps implemented by each of the HDD expanders 2.

In step S01, the HDD expander 2 receives a device-type request forinquiring a device type from a parent node of the HDD expander 2. Thedevice-type request includes a unique address, such as a serial attachedSCSI (SAS) address, of an originator of the device-type request. Itshould be noted that the host computer may generate and output thedevice-type request when the host computer 1 is powered for the firsttime or when the host computer 1 detects that an HDD expander 2 isconnected directly thereto for the first time. Similarly, each of theHDD expanders 2 may also generate and output the device-type requestwhen it is powered for the first time or when it detects that anotherHDD expander 2 is connected directly thereto for the first time. Inother embodiments, the host computer 1 may generate and output thedevice-type request at regular intervals.

To illustrate, the parent node of the HDD expander 2 means a nodedirectly connected to the HDD expander 2 on an immediately upperhierarchy in the hierarchical tree structure. Each HDD expander 2records a unique address of itself and a unique address of its parentnode.

It is also noted that, throughout the disclosure, the term “directlyconnected” refers to a connection established between two or more nodes,such as the host computer 1 and the HDD expander 2 a, via anelectrically conductive material without other nodes therebetween.

In step S02, the HDD expander 2 determines whether the device-typerequest originates from the parent node based on the unique addresses(i.e., determining whether the unique address of the originator of thedevice-type request is identical to the unique address of the parentnode stored in the HDD expander 2).

When it is determined that the device-type request originates from theparent node, the process goes to step S03; otherwise, it means that theparent node merely forwards the device-type request, and the processgoes to step S04.

In step S03, the HDD expander 2 generates and transmits a firstdevice-type reply indicating a device type of HDD expander to the parentnode, and forwards the device-type request to its child node(s), if any.The first device-type reply includes the unique address of the HDDexpander 2.

To illustrate, some of the HDD expanders 2, such as the HDD expanders 2a and 2 b, have at least one child node in the hierarchical treestructure (the HDD expander 2 a has child nodes 2 b and 2 c, and the HDDexpander 2 b has child nodes 2 d and 2 e); others, such as the HDDexpanders 2 c, 2 d and 2 e, have no child node.

Moving down the hierarchical tree structure, when the child nodereceives the device-type request, the child node will implement theabovementioned method as well, starting from step S01. As thedevice-type request received by the child node originates from its“grandparent” node instead of its parent node, the child node willevidently proceed to step S04.

In step S04, the HDD expander 2 generates and transmits a seconddevice-type reply indicating a device type not of HDD expander to theparent node, and does not forward the device-type request to its childnode (s). The process then proceeds to step S05. In some embodiments,the second device-type reply does not include the unique address of theHDD expander 2.

In step S05, upon receiving the second device-type reply generated bythe HDD expander 2 in step S04, the parent node of the HDD expander 2forwards the second device-type reply to its own parent node (a.k.a. thegrandparent node of the HDD expander 2.

It can be appreciated that when the HDD expander 2 acknowledges itsdevice type of HDD expander (for example, by sending out the firstdevice-type reply), the HDD expander 2 will implement a downwardscanning process to inquire a device type of its child node. On theother hand, when the HDD expander 2 denies its device type of HDDexpander (for example, by sending out the second device-type reply), thescanning process will be stopped.

For example, in a case where the device-type request originates from thehost computer 1 (see FIG. 1), in response to receipt of the device-typerequest therefrom (S01), the HDD expander 2 a generates and transmitsthe first device-type reply indicating a device type of HDD expander tothe host computer 1, and forwards the device-type request to the HDDexpanders 2 b, 2 c (S03). Next, upon receiving the device-type requestforwarded from the HDD expander 2 a, each of the HDD expanders 2 b, 2 cdetermines that the device-type request does not originate from theparent node (S02), and accordingly generates and transmits the seconddevice-type reply indicating a device type not of HDD expander to theHDD expander 2 a (S04). The HDD expander 2 a further forwards the seconddevice-type reply to the host computer 1 (S05).

In this way, no matter how complex the hierarchical tree structure is,when the host computer 1 inquires a device type of each descendant node,only the child node of the host computer 1 (i.e. the HDD expander 2 a inthe example of FIG. 1) will be recognized by the host computer 1 as aHDD expander in the hierarchical tree structure. In this instance, theHDD expanders 2 b, 2 c transmit the second device-type reply to denytheir device type of HDD expander, and are not recognized by the hostcomputer 1 as a HDD expander. Since the HDD expander 2 b does notforward the device-type request to its child nodes, the HDD expanders 2d, 2 e are not even inquired for a device type, and accordingly the hostcomputer 1 is not aware of the existence of the HDD expanders 2 d, 2 e.As a result, the HDD expanders 2 b, 2 c, 2 d, 2 e are hidden from thehost computer 1 in the hierarchical tree structure. In this way, evenwhen the total number of the HDD expanders 2 that are connected to thehost computer 1 in the cluster storage system 100 is greater than thenumber of physical links (PHYs) of the host computer 1, the hostcomputer 1 can still manage the HDD expanders 2 in the hierarchical treestructure normally without any misinterpretation.

In another case that the device-type request originates from the HDDexpander 2 a, in response to receipt of the device-type requesttherefrom (S01), each of the HDD expanders 2 b, 2 c determines that thedevice-type request originates from the parent node (S02), andaccordingly generates and transmits the first device-type replyindicating a device type of HDD expander to the HDD expander 2 a. TheHDD expander 2 b further forwards the device-type request to its childnodes (i.e., the HDD expanders 2 d, 2 e) (S03), while the HDD expander 2c has no child node and does not forward the device-type request. Next,upon receiving the device-type request forwarded from the HDD expander 2b, each of the HDD expanders 2 d, 2 e determines that the device-typerequest does not originate from the parent node (S02), and accordinglygenerates and transmits the second device-type reply indicating a devicetype not of HDD expander to the HDD expander 2 b (S04). The HDD expander2 b further forwards the second device-type replies received from theHDD expanders 2 d, 2 e to the HDD expander 2 a (S05). As a result, theHDD expanders 2 d, 2 e are hidden from the HDD expander 2 a as well asthe host computer 1 in the hierarchical tree structure. In this way,even when the number of the HDD expanders 2 that are connected to theHDD expander 2 a is greater than the number of PHYs of the HDD expander2 a, the HDD expander 2 a can still manage the descendant nodes thereofin the hierarchical tree structure normally without anymisinterpretation.

In further another case that the device-type request originates from theHDD expander 2 b, in response to receipt of the device-type requesttherefrom (S01), each of the HDD expanders 2 d, 2 e generates andtransmits the first device-type reply indicating a device type of HDDexpander to the HDD expander 2 b (S03). Since both of the HDD expanders2 d, 2 e have no child node, they would not further forward thedevice-type request.

It is noted that, under such structure with managing mechanism disclosedabove, the total number of the HDDs 3 of the cluster storage system 100can be increased while the cost or difficulty in data access will not beincreased.

Referring to FIG. 3, when the host computer 1 or one of the HDDexpanders 2 is instructed to communicate with the HDDs 3, e.g. to accessdata, each child node of the host computer 1 or the one of the HDDexpanders 2 implements following steps.

In step S11, the child node receives an access request for accessingHDDs from its parent node (i.e. the host computer 1 or the one of theHDD expanders 2). The child node is certainly one of the HDD expanders2, and is referred to as the requested HDD expander. 2 hereinafter.

In step S12, the requested HDD expander 2, after determining whetherthere is at least one child node connected thereto, proceeds to stepS13-S15 when it determines that there is a child node connected thereto,and proceeds to step S16 otherwise (no child node connected).

In step S13, the requested HDD expander 2 forwards the access request toeach child node thereof, and waits to receive a report from each childnode.

In step S14, for each child node, the requested HDD expander 2 receivesthe report from the child node. Specifically, the child node of therequested HDD expander 2, upon receiving the access request, performsaccess requesting (similar to steps S12 and S13) downwardly to itsdescendant(s), if any, and collects report(s) therefrom, and thenforwards all of the report(s), including the report form itself, to therequested HDD expander 2. Each report indicates a unique address of eachHDD 3 that is connected directly to one that generates the report. Forexample, the report generated by the child node of requested HDDexpander 2 indicates a unique address of each HDD 3 that is connecteddirectly to the child node.

In step S15, the requested HDD expander 2, upon receiving the reports,generates an access reply including a unique addresses of each HDD 3that is connected to itself directly and a unique address of each HDD 3that is connected directly to the child node or the descendant ofrequested HDD expander 2 based on the reports, and transmits the accessreply to its parent node.

Specifically, after receiving the reports in step S14, the requested HDDexpander 2 further records all of the unique addresses of the HDDs 3that are connected directly to the child node of requested HDD expander2 or to the descendants of the child node.

In the case that there is no child node connected directly to therequested HDD expander 2, in step S16, the requested HDD expander 2generates an access reply including only a unique address of each HDD 3that is connected directly to itself, and transmits the access reply toits parent node.

It is noted that, in other embodiments, the requested HDD expander 2may, upon receiving an access request for accessing HDD from the parentnode, generate and transmit an access reply only including a uniqueaddress of each HDD that is connected directly thereto to the parentnode. The requested HDD expander 2 also performs access requestingdownwardly to its child node and even descendant(s), if any. In theinstance that the HDD expander 2 has a child node and receives a reporttherefrom, the HDD expander 2 generates and transmits another accessreply to the parent node.

In a case that the HDD expander 2 a receives an access request from thehost computer 1 (S11) (see FIG. 1), the HDD expander 2 a (i.e., therequested HDD expander) determines that there are two child nodes, i.e.,the HDD expanders 2 b, 2 c, connected thereto (S12). The HDD expander 2a forwards the access request to the HDD expanders 2 b, 2 c (S13).

Taking the HDD expander 2 b for example, it determines that there aretwo child nodes, i.e., the HDD expanders 2 d, 2 e, connected thereto.The HDD expander 2 b forwards the access request to the HDD expanders 2d, 2 e. Then, the HDD expander 2 b receives from the HDD expander 2 d areport indicating unique addresses of the HDDs 3 b, 3 c that areconnected directly to the HDD expander 2 d, and from the HDD expander 2e a report indicating unique addresses of the HDDs 3 d, 3 e, 3 f thatare connected directly to the HDD expander 2 e. The HDD expander 2 bthen forwards to the HDD expander 2 a a report indicating a uniqueaddress of the HDD 3 g that is connected directly to the HDD expander 2b, and the reports received respectively from the HDD expanders 2 d, 2e.

On the other hand, the HDD expander 2 c determines that there is nochild node connected thereto, and transmits to the HDD expander 2 a areport indicating unique addresses of the HDDs 3 h, 3 i that areconnected directly to the HDD expander 2 c.

The HDD expander 2 a generates an access reply including a uniqueaddress of the HDD 3 a that is connected directly to the HDD expander 2a, the unique address of the HDD 3 g that is connected directly to theHDD expander 2 b, the unique addresses of the HDDs 3 h, 3 i that areconnected directly to the HDD expander 2 c, and the unique addresses ofthe HDDs 3 b, 3 c, 3 d, 3 e, 3 f that are connected to the HDD expanders2 d, 2 e. Then, the HDD expander 2 a transmits the access reply to thehost computer 1.

Accordingly, the host computer 1 can communicate with the HDDs 3thereunder freely based on the unique addresses indicated by the accessreply.

Referring to FIG. 4, another embodiment of the method for managing HDDexpanders 2 in the cluster storage system 100 according to thisdisclosure is provided. However, in this embodiment, the processimplemented by the HDD expander 2 that is connected directly to the rootnode (hereinafter referred to as the master expander) is different fromthe process implemented by other HDD expanders 2 that are connectedindirectly to the root node (hereinafter referred to as the secondaryexpanders). Specifically, taking the hierarchical tree structureillustrated in FIG. 1 as an example, the host computer 1 is the rootnode, the HDD expander 2 a is the master expander, and the HDD expanders2 b, 2 c, 2 d, 2 e are the secondary expanders.

For the master expander, upon receiving a device-type request forinquiring a device type from the root node, the master expanders implytransmits a device-type reply indicating a device type of HDD expanderto the root node and forwards the device-type request to each child nodethereof.

The process implemented by each of the secondary expanders is shown inFIG. 4. For illustrations purpose, the process is illustrated in a viewof one of the secondary expanders, and includes the following steps.

In step S21, the secondary expander receives a device-type request forinquiring a device type from its parent node. To illustrate, thedevice-type request includes a unique address of an originator of thedevice-type request, while each of the HDD expanders 2 (including thesecondary expanders) in the hierarchical tree structure records a uniqueaddress of itself and a unique address of the root node.

In step S22, the secondary expander determines whether the device-typerequest originates from the root node based on the unique addressesincluded in the device-type request (i.e., determining whether theunique address of the originator of the device-type request is identicalto the unique address of the root node).

The process goes to step S23 when it is determined that the device-typerequest does not originate from the root node, and goes to step S24 whenit is determined that the device-type request originates from the rootnode.

In step S23, the secondary expander generates and transmits a firstdevice-type reply indicating a device type of HDD expander to a nodethat initiates the device-type request (i.e., the originator of thedevice-type request), and forwards the device-type request to its childnode(s), if any. The first device-type reply includes the unique addressof the secondary expander that generates the first device-type reply. Insome embodiments, the secondary expander transmits the first device-typereply to the originator of the device-type request according to theunique address of the originator included in the device-type request.

To take it further, when the child node receives the device-typerequest, it means that the child node will implement the processstarting from step S21. Then, the process of this child node goes tostep S23 as well.

In step S24, the secondary expander generates and transmits a seconddevice-type reply indicating a device type not of HDD expander to theroot node (i.e., the originator of the device-type request), and doesnot forward the device-type request to its child node(s). The seconddevice-type reply does not include the unique address of the HDDexpander 2 that generates the second device-type reply. In someembodiments, the secondary expander transmits the second device-typereply to the root node according to the unique address of the originatorincluded in the device-type request.

For example, in a case where the device-type request originates from thehost computer 1 (the root node) (see FIG. 1), in response to receipt ofthe device-type request therefrom, the HDD expander 2 a (the masterexpander) generates and transmits a device-type reply indicating adevice type of HDD expander to the host computer 1 and forwards thedevice-type request to the HDD expanders 2 b, 2 c (the secondaryexpanders).

Upon receiving the device-type request forwarded from the HDD expander 2a (S21), each of the HDD expanders 2 b, 2 c, determines that thedevice-type request originates from the root node (S22), and accordinglygenerates and transmits a second device-type reply indicating a devicetype not of HDD expander to the host computer 1 (S24), and does notforward the device-type request to the HDD expanders 2 d, 2 e.

In another case that the device-type request originates from the HDDexpander 2 a, in response to receipt of the device-type requesttherefrom (S21), each of the HDD expanders 2 b, 2 c determines that thedevice-type request does not originate from the root node (S22), andaccordingly generates and transmits the first device-type replyindicating a device type of HDD expander to the HDD expander 2 a (S23).The HDD expander 2 b further forwards the device-type request to the HDDexpanders 2 d, 2 e. Next, upon receiving the device-type requestforwarded from the HDD expander 2 b, each of the HDD expanders 2 d, 2 edetermines that the device-type request does not originate from the rootnode (S22), and accordingly generates and transmits the firstdevice-type reply indicating a device type of HDD expander to the HDDexpander 2 b (S23).

Referring to FIG. 5, the method further includes steps S31-S35, to beimplemented by the master expander.

In step S31, the master expander receives from the root node an accessrequest for accessing HDDs 3.

In step S32, the master expander transmits the access request to eachdescendant node thereof.

In step S33, the master expander receives from every single workingdescendant node a report indicating a unique address of each HDD 3 thatis connected directly to the descendant node.

In step S34, the master expander generates an access reply including aunique address of each HDD 3 that is connected directly thereto, and theunique address of each HDD 3 that is connected directly to the everysingle working descendant node.

In step S35, the master expander transmits the access reply to the rootnode.

To sum up, in the method for managing the HDD expanders 2 in the clusterstorage system 100 according to this disclosure, some of the HDDexpanders 2 deny their device type of HDD expander and are hidden fromthe host computer 1 in the hierarchical tree structure. In this way, inthe case that a plurality of HDD expanders are connected in series andform a hierarchical structure, the complexity of managing mechanism canbe reduced.

In the description above, for the purposes of explanation, numerousspecific details have been set forth in order to provide a thoroughunderstanding of the embodiment(s). It will be apparent, however, to oneskilled in the art, that one or more other embodiments may be practicedwithout some of these specific details. It should also be appreciatedthat reference throughout this specification to “one embodiment,” “anembodiment,” an embodiment with an indication of an ordinal number andso forth means that a particular feature, structure, or characteristicmay be included in the practice of the disclosure. It should be furtherappreciated that in the description, various features are sometimesgrouped together in a single embodiment, figure, or description thereoffor the purpose of streamlining the disclosure and aiding in theunderstanding of various inventive aspects.

While the disclosure has been described in connection with what is (are)considered the exemplary embodiment(s), it is understood that thisdisclosure is not limited to the disclosed embodiment(s) but is intendedto cover various arrangements included within the spirit and scope ofthe broadest interpretation so as to encompass all such modificationsand equivalent arrangements.

What is claimed is:
 1. A method for managing hard disk drive (HDD)expanders in a cluster storage system, the cluster storage systemfurther including a host computer connected to the HDD expanders to forma hierarchical tree structure, the method comprising steps, to beimplemented by each of the HDD expanders that is connected indirectly toa root node, of: upon receiving a device-type request for inquiring adevice type from a parent node of the HDD expander in the hierarchicaltree structure, determining whether the device-type request originatesfrom the parent node; when it is determined that the device-type requestoriginates from the parent node, transmitting a device-type replyindicating a device type of HDD expander to the parent node, andforwarding the device-type request to each child node of the HDDexpander in the hierarchical tree structure; and when it is determinedthat the device-type request does not originate from the parent node,transmitting a device-type reply indicating a device type not of HDDexpander to the parent node.
 2. The method of claim 1, furthercomprising a step, to be implemented by each of the HDD expanders thatis connected indirectly to the root node, of: after receiving thedevice-type request that originates from the parent node of the HDDexpander, forwarding a device-type reply indicating a device type not ofHDD expander received from each child node of the HDD expander to theparent node of the HDD expander.
 3. The method of claim 1, the clusterstorage system further including a plurality of hard disk drives (HDDs)connected to the HDD expanders to form the hierarchical tree structuretogether with the host computer and the HDD expander, the method furthercomprising a step, to be implemented by each of the HDD expandersconnected indirectly to the root node, of: after receiving an accessrequest for accessing the HDDs from the parent node of the HDD expander,generating an access reply including a unique address of each HDD thatis connected directly thereto, and transmitting the access reply to theparent node.
 4. The method of claim 1, the cluster storage systemfurther including a plurality of hard disk drives (HDDs) connected tothe HDD expanders to form the hierarchical tree structure together withthe host computer and the HDD expanders, the method further comprisingsteps, to be implemented by each of the HDD expanders connectedindirectly to the root node, of: after receiving an access request foraccessing HDDs from the parent node of the HDD expander, determiningwhether there is a child node connected thereto; when it is determinedthat there is a child node connected thereto, forwarding the accessrequest to the child node; and after receiving from the child node areport indicating a unique address of each HDD that is connecteddirectly to the child node, generating an access reply including aunique address of each HDD that is connected directly to the HDDexpander and a unique address of each HDD that is connected directly tothe child node, and transmitting the access reply to the parent node. 5.The method of claim 4, further comprising steps, to be implemented byeach of the HDD expanders connected indirectly to the root node, of:when it is determined that there is no child node connected thereto,generating an access reply including only the unique address of each HDDthat is connected directly thereto, and transmitting the access reply tothe parent node.
 6. The method of claim 4, further comprising, afterreceiving the report, a step to be implemented by each of the HDDexpanders connected indirectly to the root node of recording the uniqueaddress of each HDD that is connected directly to the child node.
 7. Themethod of claim 1, wherein the device-type request including a uniqueaddress of a node that originates the device-type request.
 8. A methodfor managing hard disk drive (HDD) expanders in a cluster storagesystem, the cluster storage system further including a host computerconnection to the HDD expanders to form a hierarchical tree structure,the method comprising steps, to be implemented by each of the HDDexpanders that is connected directly to the root node, of: uponreceiving a device-type request for inquiring a device type from aparent node of the HDD expander in the hierarchical tree structure,determining whether the device-type request originates from the parentnode; when it is determined that the device-type request originates fromthe parent node, transmitting a device-type reply indicating a devicetype of HDD expander to the parent node, and forwarding the device-typerequest to each child node of the HDD expander in the hierarchical treestructure.
 9. A cluster storage system comprising: a host computer; anda plurality of hard disk drive (HDD) expanders connected to said hostcomputer to form a hierarchical tree structure, wherein each of the saidHDD expanders that is connected indirectly to the root node isconfigured to: upon receiving a device-type request for inquiring adevice type from a parent node of said HDD expander in the hierarchicaltree structure, determine whether the device-type request originatesfrom the parent node, when it is determined that the device-type requestoriginates from the parent node, transmit a device-type reply indicatinga device type of HDD expander to the parent node, and forward thedevice-type request to each child node of said HDD expander in thehierarchical tree structure, and when it is determined that thedevice-type request does not originate from the parent node, transmit adevice-type reply indicating a device type not of HDD expander to theparent node.